﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using COFE.Core;

namespace COFE.Core.Profile
{
    /// <summary>
    /// Allocate temp path for entries.
    /// </summary>
    public interface ITempManager
    {
        /// <summary>
        /// Return whether the temp manager is working.
        /// </summary>
        bool IsEnabled { get; }

        /// <summary>
        /// Return the usable temporary path, or null if it's not available.
        /// </summary>
        string TempPath { get; }

        /// <summary>
        /// Construct a new temporary path.
        /// </summary>
        /// <returns></returns>
        string NewTempPath();

        /// <summary>
        /// Construct a temp path for an item, based on it's FullParseName.
        /// </summary>
        /// <returns></returns>
        string GetTempPath(IFileSystemInfo item);
    }
}
